/**
 * ================================= ============ 框架初始化JS =========================================
 */
// *******************************************************
// ******************* 全局项目请求地址 *******************
var $location = (window.location + '').split('/');
var $basePath = $location[0] + '//' + $location[2] + '/' + $location[3];
// 全局内容区域
var $initContainer = $("#initContainer");
// ******************* 全局参数 ***************************
// 默认未启动定时刷新实时列表数据功能
var $monitorFreshListIntervalStarted = false;
// 默认未启动定时刷新实时运行数据功能
var $monitorFreshRunningIntervalStarted = false;
// 第三方业务系统ID,用于标记多个窗口
var $thirdPartyAppId = null;

// ******************* 插件封装 ***************************
// 全局提示框
function bootGrowl(data, type) {
	$.bootstrapGrowl(data, { // data为提示信息
		type : type == undefined ? 'success' : type,// type指提示类型
		delay : 1000,// 提示框显示时间
		allow_dismiss : true
	// 显示取消提示框
	});
}

// ******************* 版权信息 ***************************
// 初始化加载头部和底部版权信息
function initCopyrightInfo() {
	$.getJSON($basePath + "/style/config/system.json", function(data) {
		// 获取底部版权信息
		$("#copyrightInfo").html(data.footerName);

		// 获取头部版权信息
		$("#logoName").html(data.headName);
	});
}

//******************* Logo信息 ***************************
//获取驱动的Logo,返回logo路径
function getDriverLogo(mapping){
	var logo = "";
	switch (mapping.connector) {
	case ConnectorConstantMysql:
		logo = DriverConnectorConstant[ConnectorConstantMysql]['image'];
		break;
	case ConnectorConstantOracle:
		logo = DriverConnectorConstant[ConnectorConstantOracle]['image'];
		break;
	case ConnectorConstantSqlServer:
		logo = DriverConnectorConstant[ConnectorConstantSqlServer]['image'];
		break;
	case ConnectorConstantSqlMysql:
		// 如果是Sql类型
		logo = DriverConnectorConstant[ConnectorConstantSqlMysql]['image'];
		break;
	case ConnectorConstantSqlOracle:
		// 如果是Sql类型
		logo = DriverConnectorConstant[ConnectorConstantSqlOracle]['image'];
		break;
	case ConnectorConstantLdap:
		// 如果是Ldap类型
		logo = DriverConnectorConstant[ConnectorConstantLdap]['image'];
		break;
	case ConnectorConstantWebService:
		// 如果是WebService类型
		logo = DriverConnectorConstant[ConnectorConstantWebService]['image'];
		break;
	case ConnectorConstantRedis:
		// 如果是Redis类型
		logo = DriverConnectorConstant[ConnectorConstantRedis]['image'];
		break;
	default:
		break;
	}
	return logo;
}

// ******************* 初始化 *****************************
// 默认绑定菜单事件
$(function() {
	//logo
	$("#logo").attr("src", $basePath + "/style/images/logo.png");
	
	// 初始化加载头部和底部版权信息
	initCopyrightInfo();

	// 注销
	$("#nav_logout").click(function() {
		// 确认框确认是否注销
		BootstrapDialog.show({
			title : "提示",
			type : BootstrapDialog.TYPE_INFO,
			message : "确认注销帐号？",
			size:BootstrapDialog.SIZE_NORMAL,
			buttons : [{
				label : "确定",
				action : function(dialog){
					window.location.href=$basePath +'/authenticate/logout';
					dialog.close();
				}
				},{
					label : "取消",
					action : function(dialog){			    
					dialog.close();
				}
			}]
		});
	});

	// 绑定所有的菜单链接点击事件，根据不同的URL加载页面
	$("#menu li a[url]").click(function() {
		// 加载页面
		$initContainer.load($(this).attr("url"));
	});

	// 头部导航栏选中切换事件
	var $menu = $('#menu > li');
	$menu.click(function() {
		$menu.removeClass('active');
		$(this).addClass('active');
	});

	// 加载默认页面,在IE浏览器下,防止请求从缓存加载,故加上refresh时间戳参数
	var defUrl = $("#menu li a[url][class='initURL']").attr("url");
	defUrl += defUrl.indexOf("?") > -1 ? '&' : '?'; 
	defUrl += 'refresh='+new Date().getTime();
	$initContainer.load(defUrl);
});
